import pygame
from pygame.locals import *
import os
from sys import exit
import random
from modules import *

pygame.init()

#CARREGA A TELA
tamanho_tela = (630,480)
tela = pygame.display.set_mode(tamanho_tela, 0, 32)
fundo = pygame.image.load("imagens" + os.sep + "fundo2.png").convert_alpha() 

#CARREGA A MUSICA
pygame.mixer.music.load("sounds" + os.sep + "cachaca.mp3")
pygame.mixer.music.play(-1)
play_music = True

#FUNCAO PARA QUANDO A SNAKE MORRER
def gameover():
    game = pygame.image.load("imagens" + os.sep + "perdeu.png").convert()
    tela.blit(game, (0, 0))
    pygame.display.update()

#DEFININDO O NOME DA JANELA
pygame.display.set_caption("DrunkSnake - JacaGames")


tempo = pygame.time.Clock()

#CHAMA A CLASSE COBRA
cobra = Snake()

v = 9

#CHAMA A CLASSE DRINK
bebida = Drink()



while True:
  
    tela.blit(fundo, (0, 0))#BLITA A TELA
    
    for event in pygame.event.get():
        if event.type == QUIT:
            exit()
        #ORIENTACAO DO TECLADO
        if event.type == KEYDOWN:
            if event.key == K_UP:
                cobra.cabeca.muda_direcao((0,-1))
            if event.key == K_DOWN:
                cobra.cabeca.muda_direcao((0,1))
            if event.key == K_LEFT:
                cobra.cabeca.muda_direcao((-1,0))
            if event.key == K_RIGHT:
                cobra.cabeca.muda_direcao((1,0))
                
    pressed = pygame.key.get_pressed()#PARA PAUSAR A MUSICA
    
    #PARA A COBRA PODER PASSAR DE UM LADO PARA O OUTRO NA TELA
    if(cobra.cabeca.x < 0):
        cobra.cabeca.x = 630    
    
    if(cobra.cabeca.x > 630):
        cobra.cabeca.x = 0    
    
    if(cobra.cabeca.y < 0):
        cobra.cabeca.y = 480
      
    if(cobra.cabeca.y > 480):
        cobra.cabeca.y = 0    
        
	#PAUSA A MUSICA
    if pressed[K_p]:
        if play_music:
            pygame.mixer.music.pause()
            play_music = False
        else:
            pygame.mixer.music.unpause()
            play_music = True
            
    #TRATA A COLISAO ENTRA A SNAKE
    if cobra.colisao_corpo():
        break
        
	#MOVIMENTA O DRINK DEPOIS QUE E BEBIDO PELA SNAKE       
    if cobra.cabeca.colliderect(bebida):
        bebida.x = random.randint(0,590)
        bebida.y = random.randint(0,420)
        cobra.adiciona_corpo()
        
        
    
       	
    cobra.mover()#MOVE A SNAKE
    
    cobra.blita(tela)#BLITA A SNAKE NA TELA 
    
    tela.blit(bebida.image, (bebida.x, bebida.y))#BLITA O DRINK
    
    pygame.display.update()
    
    tempo.tick(v)
        
gameover()        
